widget: Drop gtk_widget_grab_default
authorMatthias Clasen <mclasen@redhat.com>
Sat, 27 Apr 2019 03:57:13 +0000 (03:57 +0000)
committerMatthias Clasen <mclasen@redhat.com>
Sun, 28 Apr 2019 23:23:11 +0000 (23:23 +0000)
The default widget is mostly a dialog concept,
and does not really need this generic api.

If you need to mark a widget as default,
use gtk_window_set_default() directly.

docs/reference/gtk/gtk4-sections.txt
gtk/gtkwidget.c
gtk/gtkwidget.h

index 19e5e49841b8b2b809eeaaec39bd1322e6ca0ef9..231242108e8673bd3e01b78452b194aaed818723 100644 (file)
@@ -4433,7 +4433,6 @@ gtk_widget_event
 gtk_widget_activate
 gtk_widget_is_focus
 gtk_widget_grab_focus
-gtk_widget_grab_default
 gtk_widget_set_name
 gtk_widget_get_name
 gtk_widget_set_sensitive
index bbacdfdd34fbe581bab1163d297b14e810e4e99d..3195d78b5b1f83eea29757b7f3d4920a81d985a7 100644 (file)
@@ -1045,7 +1045,7 @@ gtk_widget_class_init (GtkWidgetClass *klass)
                             P_("Has default"),
                             P_("Whether the widget is the default widget"),
                             FALSE,
-                            GTK_PARAM_READWRITE|G_PARAM_EXPLICIT_NOTIFY);
+                            GTK_PARAM_READABLE|G_PARAM_EXPLICIT_NOTIFY);
 
   widget_props[PROP_RECEIVES_DEFAULT] =
       g_param_spec_boolean ("receives-default",
@@ -2193,10 +2193,6 @@ gtk_widget_set_property (GObject         *object,
     case PROP_CAN_DEFAULT:
       gtk_widget_set_can_default (widget, g_value_get_boolean (value));
       break;
-    case PROP_HAS_DEFAULT:
-      if (g_value_get_boolean (value))
-       gtk_widget_grab_default (widget);
-      break;
     case PROP_RECEIVES_DEFAULT:
       gtk_widget_set_receives_default (widget, g_value_get_boolean (value));
       break;
@@ -5821,9 +5817,14 @@ gtk_widget_get_focus_on_click (GtkWidget *widget)
  * @widget: a #GtkWidget
  * @can_default: whether or not @widget can be a default widget.
  *
- * Specifies whether @widget can be a default widget. See
- * gtk_widget_grab_default() for details about the meaning of
- * “default”.
+ * Specifies whether @widget can be a default widget.
+ *
+ * The default widget is activated when the user presses
+ * Enter in a window. Default widgets must be activatable,
+ * that is, gtk_widget_activate() should affect them. Note
+ * that #GtkEntry widgets require the “activates-default”
+ * property set to %TRUE before they activate the default
+ * widget when Enter is pressed and the #GtkEntry is focused.
  **/
 void
 gtk_widget_set_can_default (GtkWidget *widget,
@@ -5898,47 +5899,17 @@ _gtk_widget_set_has_default (GtkWidget *widget,
     gtk_style_context_remove_class (context, GTK_STYLE_CLASS_DEFAULT);
 }
 
-/**
- * gtk_widget_grab_default:
- * @widget: a #GtkWidget
- *
- * Causes @widget to become the default widget. @widget must be able to be
- * a default widget; typically you would ensure this yourself
- * by calling gtk_widget_set_can_default() with a %TRUE value.
- * The default widget is activated when
- * the user presses Enter in a window. Default widgets must be
- * activatable, that is, gtk_widget_activate() should affect them. Note
- * that #GtkEntry widgets require the “activates-default” property
- * set to %TRUE before they activate the default widget when Enter
- * is pressed and the #GtkEntry is focused.
- **/
-void
-gtk_widget_grab_default (GtkWidget *widget)
-{
-  GtkWidget *window;
-
-  g_return_if_fail (GTK_IS_WIDGET (widget));
-  g_return_if_fail (gtk_widget_get_can_default (widget));
-
-  window = _gtk_widget_get_toplevel (widget);
-
-  if (window && _gtk_widget_is_toplevel (window))
-    gtk_window_set_default_widget (GTK_WINDOW (window), widget);
-  else
-    g_warning (G_STRLOC ": widget not within a GtkWindow");
-}
-
 /**
  * gtk_widget_set_receives_default:
  * @widget: a #GtkWidget
  * @receives_default: whether or not @widget can be a default widget.
  *
- * Specifies whether @widget will be treated as the default widget
- * within its toplevel when it has the focus, even if another widget
- * is the default.
+ * Specifies whether @widget will be treated as the default
+ * widget within its toplevel when it has the focus, even if
+ * another widget is the default.
  *
- * See gtk_widget_grab_default() for details about the meaning of
- * “default”.
+ * See gtk_widget_set_can_default() for details about the
+ * meaning of “default”.
  **/
 void
 gtk_widget_set_receives_default (GtkWidget *widget,
index 2734c4fd37bfe5f55c18b3e8677f4018940fc717..1c14b63de48e6e5c8465288326fd1b9a7e57637f 100644 (file)
@@ -482,8 +482,6 @@ GDK_AVAILABLE_IN_ALL
 gboolean   gtk_widget_get_can_default     (GtkWidget           *widget);
 GDK_AVAILABLE_IN_ALL
 gboolean   gtk_widget_has_default         (GtkWidget           *widget);
-GDK_AVAILABLE_IN_ALL
-void       gtk_widget_grab_default        (GtkWidget           *widget);
 
 GDK_AVAILABLE_IN_ALL
 void      gtk_widget_set_receives_default (GtkWidget           *widget,